package com.example.wangyi.utils;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;

public class GsonUtils {
    private static Gson mGson;

    /**
     * 实现格式化的时间字符串转时间对象
     */
    private static final String DATEFORMAT_default = "yyyy-MM-dd HH:mm:ss";

    //静态代码块  跟着类的加载而加载，只调用一次
    static {
        mGson = new Gson();
    }

    //构造代码块
    {}


    //将json串解析成实体Bean  一般情况
    public static <T> T jsonStr2Bean(String jsonStr, Class<T> tClass) {
        T t = mGson.fromJson(jsonStr, tClass);
        return t;
    }

    /**
     * json字符串转bean对象
     *
     * @param json
     * @param cls
     * @return
     */
    public static <T> T fromJson(String json, Class<T> cls) {
        Gson gson = new GsonBuilder().setDateFormat(DATEFORMAT_default)
                .create();
        return gson.fromJson(json, cls);
    }

}
